package com.jsonal.service;

import com.jsonal.entity.api.Article;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jsonal.entity.api.ArticleBean;
import com.jsonal.vo.Result;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author auto
 * @since 2020-04-20
 */
public interface ArticleService extends IService<Article> {

    /**
     * 发布文章
     * @param articleBean model
     * @return res
     */
    Result releaseBlog(ArticleBean articleBean);

    /**
     * 根据用户信息 获取该用户的所有博客
     * @param articleBean model
     * @return res
     */
    Result getMyBlogList(ArticleBean articleBean);

    /**
     * 查看详细内容
     * @param id  id
     * @return res
     */
    Result getBlogInfo(String id);

    /**
     * 根据 id 逻辑删除数据
     * @param id 文章 id
     * @return res
     */
    Result remove(String id);

    /**
     * 更新数据
     * @param articleBean model
     * @return res
     */
    Result updateInfo(ArticleBean articleBean);

    /**
     * 首页展示数据
     * @param articleBean 分页
     * @return res
     */
    Result getBlogList(ArticleBean articleBean);

    /**
     * 获取文章列表（后台）
     * @param bean model
     * @return res
     */
    Result getArticleList(ArticleBean bean);

    /**
     * 根据 id 设置为热门文章
     * @param id id
     * @return res
     */
    Result hot(String id);

    /**
     * 获取热门文章
     * @return res
     */
    Result getHotList();


}
